package cn.tedu.csmall.passport.pojo.param;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotNull;
import java.io.Serializable;

@Data
@Accessors(chain = true)
public class AdminUpdateInfoParam implements Serializable {

    @NotNull(message = "用户名不能为空")
    @ApiModelProperty(value = "管理员用户名", required = true, example = "测试管理员001")
    private String username;

    @NotNull(message = "昵称不能为空")
    @ApiModelProperty(value = "管理员昵称", required = true, example = "测试昵称001")
    private String nickname;

    @NotNull(message = "头像不能为空")
    @ApiModelProperty(value = "管理员头像", required = true, example = "暂无")
    private String avatar;

    @NotNull(message = "手机号不能为空")
    @ApiModelProperty(value = "管理员手机号", required = true, example = "18888888888")
    private String phone;

    @NotNull(message = "邮箱不能为空")
    @ApiModelProperty(value = "管理员邮箱", required = true, example = "888@cn.tedu")
    private String email;

    @NotNull(message = "简介不能为空")
    @ApiModelProperty(value = "管理员简介", required = true, example = "这是一条简介")
    private String description;

    @NotNull(message = "是否启用不能为空")
    @ApiModelProperty(value = "管理员是否启用，1代表启用，0代表禁用", required = true, example = "1")
    private Integer enable;

    /**
     * 修改管理员时需要选择管理员对应的角色以配置相应权限
     * 一个管理员可以选择多个角色
     */
    private Long[] roleIds;
}
